interface Lexico
{
/**
* Avanza la entrada hasta el siguiente componente léxico.
*/
void avanza();
/**
* Retorna el componente léxico en la posición actual
*/
String actual();
/**
* Compara actual con el parámetro c. Llama a avanza y retorna true si son
* iguales. Retorna false de lo contrario.
*/
boolean consume(String c);
/*
* { if (c.equals(actual)) { avanza(); return true; } return false; }
*/
/**
* Regresa true si se agotó la secuencia de entrada, false de lo contrario.
*/
boolean fin();
/**
* regresa el lexema asociado al componente léxico retornado por actual
*/
String lexema();
/**
* Regresa la posición actual en la entrada.
*/
int posicion();
/**
* Cambia la posición actual en la entrada.
*/
void cambiarPosicion(int nuevaPosicion);
}